package com.neuedu.first;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;

public class ListTestDriver {
    public static void main(String[] args) {
        test02();
    }

    /**
     * 接口实现类：ArrayList
     */
    private  static  void  test01(){
        //创建一个List集合对象
        //多态：父类指代子类
        //面向接口编程想
        List lst0=new ArrayList();
        //存入元素
        lst0.add("maodan");
        lst0.add("aimaodan");
        lst0.add("aimaodan");
        lst0.add(null);
        lst0.add("woaimaodan");

        System.out.println("标准for循环方式遍历：");
        //输出元素
        for (int i=0;i<lst0.size();i++){
            System.out.println(" "+lst0.get(i));
        }

        System.out.println("增强型for循环方式遍历：");
        for (Object obj:lst0){
            System.out.println(" "+obj);
        }

        System.out.println("迭代器方式遍历：");
        //获取迭代器对象
        Iterator it=lst0.iterator();
        //循环遍历
        while(it.hasNext()){
            //去除下一个元素
            Object obj=it.next();
            //输出
            System.out.println(" "+obj);
        }
    }

    /**
     * 接口实现类：ArrayList
     */
    private  static  void  test02(){
        //创建一个List集合对象
        //多态：父类指代子类
        //面向接口编程想
        List lst0=new LinkedList();
        //存入元素
        lst0.add("maodan");
        lst0.add("aimaodan");
        lst0.add("aimaodan");
        lst0.add(null);
        lst0.add("woaimaodan");

        System.out.println("标准for循环方式遍历：");
        //输出元素
        for (int i=0;i<lst0.size();i++){
            System.out.println(" "+lst0.get(i));
        }

        System.out.println("增强型for循环方式遍历：");
        for (Object obj:lst0){
            System.out.println(" "+obj);
        }

        System.out.println("迭代器方式遍历：");
        //获取迭代器对象
        Iterator it=lst0.iterator();
        //循环遍历
        while(it.hasNext()){
            //去除下一个元素
            Object obj=it.next();
            //输出
            System.out.println(" "+obj);
        }
    }
}
